A storage system including a host apparatus and a storage apparatus which stores data for the host apparatus is known.
A technique for duplicating data and recording it on a plurality of disks is known. This technique is used for, for example, improving the performance or reliability of an ordinary storage system. In addition, a remote copy function for installing a plurality of storage apparatus at places distant from one another and keeping data stored in them equivalent is known.
A technique for preserving a measure to perform recovery by controlling and guaranteeing the order in which a storage apparatus is written by a database itself even in the case of the occurrence of a failure in an apparatus, such as a server, or a disaster is known. With storage apparatus using the remote copy function, a technique for storing data written by a host apparatus in a mirrored storage apparatus while maintaining the order in which the data is transferred is known. The host apparatus which is in operation may go down due to a disaster. However, if the order is guaranteed, data processing can be continued by the use of a host apparatus included in a spare storage system on the basis of data stored in the mirrored storage apparatus.
Furthermore, with remote copy it is known that an increase in the distance of a connection between a master storage system and a substorage system causes a slow communication response and a delay in data copy. Accordingly, the technique of placing a cache disk between the master storage system and the sub storage system for temporarily storing copy object data is known.
Japanese Laid-open Patent Publication No. 2006-260292
International Publication Pamphlet No. WO/2008/139545
Japanese Laid-open Patent Publication No. 2006-155202
FIGS. 22A and 22B are examples of a remote copy control method by a storage apparatus.
FIG. 22A is an example of realizing mirroring by transferring data between dedicated buffers 72 of controller modules 74 (CM0 and CM1) in a copy source storage apparatus 71 and dedicated buffers 82 of controller modules 84 (CM0 and CM1) in a storage apparatus 81 remotely connected to the storage apparatus 71.
1) The copy source storage apparatus 71 temporarily stores data I/O(1) through I/O(5) from a host in disk units 73 and then stores them in the transfer buffers 72.
2) Data is transferred periodically from the buffers 72 in the copy source storage apparatus 71 to the buffers 82 in the copy destination storage apparatus 81. When the copy source storage apparatus 71 transfers the data from the buffers 72 to the copy destination storage apparatus 81, the copy source storage apparatus 71 synchronizes the CM0 to the CM1 with respect to transfer timing.
3) The copy destination storage apparatus 81 stores the data transferred from the copy source storage apparatus 71 in disk units 83. At this time the copy destination storage apparatus 81 synchronizes the CM0 to the CM1 with respect to timing at which the data is outputted from the buffers 82.
There are a plurality of buffers 72 and a plurality of buffers 82. When the data is transferred from the copy source storage apparatus 71 to the copy destination storage apparatus 81, the order in which the data is transferred from the plurality of buffers 72 and the order in which the data is outputted from the plurality of buffers 82 are maintained and the plurality of buffers 72 are associated with the plurality of buffers 82. As a result, the order in which the data is transferred is guaranteed in the copy destination storage apparatus 81.
By the way, the concept of preventing data from being lost in a system has recently spread. A method in which mirroring is performed not via only one apparatus but via one or more apparatus is known. As illustrated in FIG. 22B, for example, a storage apparatus 91 placed for relay between a storage apparatus 71 and a storage apparatus 81 includes a controller module 93 with buffers 92 and a controller module 95 with buffers 94.
1) Data which is transferred from the copy source storage apparatus 71 and which is stored in buffers 92 is temporarily stored in disk units 96. The data in the buffers 92 is outputted to the disk units 96 in parallel, so data transfer order is not taken into consideration.
2) After the data stored in the disk units 96 is stored in buffers 94, the data is transferred to the copy destination storage apparatus 81. The data is stored in the buffers 94 in the order in which the data is written to the disk units 96. Accordingly, as stated above, when the data is transferred to the storage apparatus 81, data transfer order is not guaranteed.
Remote copy between the storage apparatus 91 and the storage apparatus 71 and remote copy between the storage apparatus 91 and the storage apparatus 81 which are independent of each other are managed. As a result, data transfer order among a plurality of apparatus cannot be guaranteed.